Add Simplified Chinese localization - #74
Merged
Merged
Conversation
Member
|
Great! But could you merge it to relase 2.2 https://github.com/roxy-wi/IncidentRelay/tree/release/2.2 |
Contributor
Author
Sure |
Register zh locale support across browser negotiation, profile preferences, OpenAPI, PWA messages, calendar formatting, and services runtime text. Add complete Chinese catalogs matching the English file and key contract, with tests for placeholders, SRE abbreviations, locale persistence, and dynamically composed UI strings.
CoooderSan
force-pushed
the
feat/zh-cn-localization
branch
from
September 3, 2026 02:05
8da66e4 to
0ddd136
Compare
Contributor
Author
|
Done — I rebased the localization commit onto |
Member
|
Thank you! |
Aidaho12
added a commit
that referenced
this pull request
Sep 12, 2026
* Add Azure Monitor integration add Azure Monitor Common Alert Schema normalizer support Fired/Resolved lifecycle and Sev0-Sev4 severity mapping expose Azure metadata and custom properties as routing labels add Azure Monitor as a route source add webhook endpoint with route token authentication support HTTP Basic auth for native Azure Action Group webhooks add Azure Monitor route UI, intake URL and curl example add default grouping by azure_alert_id document Azure Monitor endpoint in OpenAPI add EN/RU/DE/FR UI translations add English and Russian Azure Monitor integration documentation update integration lists in README and docs add regression tests for normalization, auth and alert lifecycle * feat(i18n): add Simplified Chinese localization (#74) Register zh locale support across browser negotiation, profile preferences, OpenAPI, PWA messages, calendar formatting, and services runtime text. Add complete Chinese catalogs matching the English file and key contract, with tests for placeholders, SRE abbreviations, locale persistence, and dynamically composed UI strings. Co-authored-by: caocong <23969281+CoooderSan@users.noreply.github.com> * Add Spanish language * Add custom CA certificate for ssl - Document outbound_private_network_allowlist and upgrade impact #75 Closed #68 * Add configurable alert event history controls and orchestration overrides * add `[alerts] event_history` with `full`, `initial`, and `disabled` modes * add `set_alert_event_history` action for global and service Event Orchestration * preserve operational timeline events such as ACK, comments, escalations, maintenance, correlation, responders, and notifications * apply alert event history settings only to incoming `created`, `updated`, and `resolved` lifecycle events * use last matching orchestration action as the effective event history mode * expose effective alert event history in orchestration simulation results * add pagination support for alert event history and load older events on demand in the UI * keep existing alert events API behavior backward compatible for clients that do not request pagination Closes #76 * Harden soft-delete lifecycle and resource restoration * restore soft-deleted SSO users on successful login while keeping manually disabled users blocked * preserve user identity while preventing old memberships, API tokens, notification rules, push subscriptions, and runtime state from being reactivated * block personal notifications for deleted or inactive users and cancel pending/processing deliveries * clean up service ownership, responders, stakeholders, rotations, and access assignments when users are deleted * expand group and team soft-delete cascades to modern resources including services, policies, heartbeats, business services, service standards, maintenance windows, and event orchestrations * revoke API and orchestration intake tokens when parent resources are deleted * cancel pending orchestration events and webhook executions during deletion * resolve active alert groups owned by deleted teams so reminders and escalations cannot resume after restoration * reset heartbeat runtime state and close active heartbeat incidents on deletion * remove active references to deleted services, routes, notification channels, rotations, and policies * make scheduler and notification queries fail closed for deleted or inactive parent resources * restore soft-deleted resources with matching natural keys instead of failing on existing unique database rows * preserve historical resource IDs while starting restored resources with clean operational state * make orchestration intake authentication reject deleted or disabled orchestrations even with legacy active tokens * consistently populate `deleted_at` across soft-delete paths * add regression coverage for SSO user restoration, notification safety, cascading deletes, runtime cleanup, and natural-key recreation Fixes #77 * Add optional SSO profile claim mappings * Add configurable SSO claim mappings for Slack, Telegram, and Mattermost user IDs. * Restrict mappings to predefined IncidentRelay profile fields. * Support custom and dotted OIDC/SAML claim names. * Populate mapped profile fields only when the existing value is empty. * Preserve manually configured Slack, Telegram, and Mattermost IDs during SSO login. * Add provider model, migration, API schema, serializer, OpenAPI, and UI support. * Add SSO configuration fields for profile claim mappings. * Add regression tests for mapping validation, persistence, claim extraction, and non-overwrite behavior. Closes #63 * Add alert shelving with notification actions and automatic resume * add AlertGroup shelving without changing the underlying firing or acknowledged status * support configurable shelve duration, reason, manual unshelve, and automatic expiry * pause notifications, updates, reminders, and escalation while an alert is shelved * resume notification delivery and restart escalation when a firing alert is unshelved * safely clear shelving when alerts resolve or are merged * add Shelve/Unshelve actions to the web UI * add interactive Shelve/Unshelve actions for Telegram, Slack, Mattermost, and browser push * enforce responder permissions for external notification actions * add scheduler processing for expired shelves and protect against stale expiry races * expose shelving state through API serializers and OpenAPI * add audit and timeline events for shelve lifecycle changes * add shelved filtering and UI status indicators * keep service and business impact based on the real alert status while shelved * add migrations, configuration defaults, Helm settings, and regression coverage * update README, alerts, notification, integration, RBAC, configuration, troubleshooting, and shelving documentation * add and align translations across all supported locales * Fix: remove redundant slashes in static CSS paths (#78) - Changed "/css/..." to "css/..." for correct url_for usage over HTTPS via nginx Co-authored-by: Danila Kashin <danila.kashin@atom.team> * Fix tests and bugs Close #79 * edge cases tests * fix edge cases tests --------- Co-authored-by: CoooderSan <dazz.cao@ecochn.com> Co-authored-by: caocong <23969281+CoooderSan@users.noreply.github.com> Co-authored-by: Danila Kashin <danyekash@gmail.com> Co-authored-by: Danila Kashin <danila.kashin@atom.team>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
IncidentRelay currently supports English, German, French, and Russian, but it does not provide a Simplified Chinese interface. This makes daily use harder for Chinese-speaking on-call and operations teams, especially when multiple Grafana installations feed alerts into one shared on-call workflow.
Change
release/2.2branch and include its Azure Monitor integration strings.zhlocale and normalize regional variants such aszh-CNandzh_CN.This PR only adds Simplified Chinese UI support.
Tests
pytest -q: 1,691 passed.Manual verification
zh,zh-CN, andzh_CNresolve to Simplified Chinese.zhand renders<html lang="zh">with Chinese UI text.